import Vue from "vue";
import Vuex from "vuex";
// 引入封装 模态框模块
import Dialog from "./modules/Dialog";
// 引入封装动态标签页
import activeRoute from "./modules/activeRoute";
// 引入 左侧侧边栏展开收起控制模块
import Collapse from "./modules/Collapse";
// 引入数据持久化插件
import createPersistedState from "vuex-persistedstate";
Vue.use(Vuex);

export default new Vuex.Store({
  state: {},
  mutations: {},
  actions: {},
  modules: {
    Dialog,
    activeRoute,
    Collapse
  },
  plugins: [
    // 配置数据持久化插件
    createPersistedState({
      // 指定本地存储的位置 默认localStorage
      storage: sessionStorage,
      // 本地存储key
      key: 'client-pc-vuex',
      // 指定存储的模块
      paths: ['Dialog', 'activeRoute', 'Collapse']
    })
  ]
});
